GWE IPv6のDHCP
問題名
IPv6のDHCP
問題文
概要
トラコン大学のすぐる先生は、ネットワークの授業でIPv6のDHCPをパケットキャプチャして見せたいと考えました。  
ルーターOSではなく使い慣れたLinux 環境で行いたいと考えfrrを選定しました。  
しかし、すぐる先生はfrrを触ったことがありません。  
さらに、すぐる先生は学会で忙しいため、ゼミ生であるあなたに手順を調べてほしいとお願いしてきました。  
DHCPの方法は、SLAAC・DHCPv6どちらでも構わないそうです。  
ホスト dhcp-serverにfrrをインストールして、clientにIPv6アドレスを配布してあげて疎通確認できる状態までしてください。
アドレスレンジはは2001:db8::/64を使用してください。

dhcp-serverとclientのアドレス、手順を報告すること。
初期状態
- IPv6が何も設定されていない
終了状態
- dhcp-serverがdhcpで- clientにipを配布し、pingを送ることができる
問題環境
dhcp-serverとclientはIPv4によってアクセスができるが、一切IPv6などの設定がされていないプレーンなUbuntu22.04
解説
概要・作問意図
問題名が問題のすべてを表していて、単純にaptなどでfrrをインストールし、dhcp-serverに固定IPを振ってclientにDHCPをする問題です。  
ネットワークを勉強するのって実機がいるんじゃないか?となりがちなのでvyosだけでなくfrrというソフトウェアルーターがあることを知ってほしかった(のと、自分が触ってみたかった)からです。
dockerとfrrを利用して手元でネットワーク実験ができるtinet というソフトもあります。
 仕組みなどを解説した動画もあるので、よければ。
解答手順
dhcp-serverにFRRをインストールする。
sudo apt install frrvtyshを起動してipv6を設定して、固定IP(本記事ではは2001:db8::1/64とする)とSLAACの設定を入れる。
interface eth0
 ipv6 address 2001:db8::1/64
 ipv6 nd prefix 2001:db8::/64
 no ipv6 nd suppress-raクライアントでは、/etc/netplan/01-netcfg.yamlを以下のように書き換える。
-     dhcp6: 'no'
+     dhcp6: 'yes'変更を適用して、DHCPサーバーのVMと疎通をはかる。
sudo netplan apply # デフォルトルートの書き方が非推奨というwarningが出るが、無視する
ping 2001:db8::1再起動後の挙動は指定していないので writeしてもしなくてもいいです。
採点基準
- frrがインストールされている: 50%
- IPv6のDHCPができている: 50%
参加者の解答例
- Docker でfrrを動かす aptで入れることもできますが
  sudo docker run -d --net=host --cap-add=CAP_NET_ADMIN --cap-add=CAP_NET_RAW --cap-add=CAP_SYS_ADMIN --privileged frrouting/frr:v8.4.1のように Docker で動作させているチームもいました。